
class Person{
    public String name;
    public int age;
    public String gender;

    public void sayHello(){
        System.out.println("Hello! How do you do!");
    }
}

class Date{
    public int year ;
    public int month;
    public int day;

    //Date this 是一个隐藏的参数
    public void setDate(Date this, int y ,int m ,int d){
        year = y;
        month = m;
        day = d;
    }

    public void printDate(Date this){
        System.out.println("年: "+ year + " 月: " + month + " 日: " + day);
    }

    // 构造方法：
    // 名字与类名相同，没有返回值类型，设置为void也不行
    // 一般情况下使用public修饰
    // 在创建对象时由编译器自动调用，并且在对象的生命周期内只调用一次
    public Date(int year , int month, int day){
        this.year = year;
        this.month = month;
        this.day = day;
    }

    public Date(){
        this.year = 1998;
        this.month = 8;
        this.day = 9;
    }
}
public class Practice {
    public static void main1(String[] args) {
        //类Date实例化三个对象，分别是date1，date2，date3
        //Date date1 = new Date();
        //Date date2 = new Date();
        //Date date3 = new Date();

//        //设置日期
//        date1.setDate(2022,11,8);
//        date2.setDate(2022,11,9);
//        date3.setDate(2022,11,10);
//
//        //打印日期
//        date1.printDate();
//        date2.printDate();
//        date3.printDate();
    }

    public static void main2(String[] args) {
        int z = 1;
        System.out.println(z);
    }

    public static void main(String[] args) {
        Date day = new Date(2022,2,20);
        day.printDate();
    }




}


